package com.aabte.design2.behavioral.chain.v3;

import lombok.Data;
import lombok.EqualsAndHashCode;

/**
 * 但复杂组件可能会对默认实现进行重写。如果无法以新的方式来提供帮助文字，
 * 那组件总是还能调用基础实现的（参见 Component 类）。
 *
 * @author Daniel
 * @version 1.0
 * @date 2020/5/3
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class Panel extends Container {

    private String modalHelpText;

    public Panel(int x, int y, int width, int height) {
        super(x, y, width, height);
    }

    @Override
    public void showHelp() {
        if (null != modalHelpText) {
            System.out.println("modalHelpText = " + modalHelpText);
        } else {
            super.showHelp();
        }
    }
}
